﻿/*  ----------------------------------------------------------------------------
 *  Author:
 *  Chandra Shekhar Tripathi
 *  ----------------------------------------------------------------------------
 *  Product Name:
 *  DbDocumenter
 *  ----------------------------------------------------------------------------
 *  Year:
 *  2009
 *  ----------------------------------------------------------------------------
 *  File:
 *  Utility.cs
 *  ----------------------------------------------------------------------------
 */
namespace DBDocumenter.Helper
{
    using System.Collections.Generic;

    using DBDocumenter.BLL.Entities;

    #region Enumerations

    public enum WizardSteps
    {
        Welcome,
        DatabaseInformation,
        DatabaseSummary,
        DatabaseCompont
    }

    #endregion Enumerations

    #region Classes

    public class Setting
    {
        #region Properties

        public string CurrentTheme
        {
            get; set;
        }

        #endregion Properties
    }

    public class Utility
    {
        #region Fields

        public static string connectionString = string.Empty;
        public static string databaseName = string.Empty;
        public static List<ServerInfo> databases = new List<ServerInfo>();
        public static string fileLocation = string.Empty;
        public static List<Function> functions = new List<Function>();
        public static bool isServerConnected;
        public static string password = string.Empty;
        public static string serverName = string.Empty;
        public static List<StoredProcedure> storedProcedures = new List<StoredProcedure>();
        public static List<Table> tables = new List<Table>();
        public static string trustedConnection = string.Empty;
        public static string userName = string.Empty;
        public static List<View> views = new List<View>();

        private static List<string> objectToWrite = new List<string>(new string[] { "Tables", "Views", "Procedures", "Functions" });

        #endregion Fields

        #region Properties

        /// <summary>
        /// Gets the object to write.
        /// </summary>
        /// <value>The object to write.</value>
        public static List<string> ObjectToWrite
        {
            get { return objectToWrite; }
        }

        #endregion Properties
    }

    #endregion
}